


function success(res, message, data = {}, code = 200) {
    res.json({
        code,
        message,
        data
    })
}

function failure(res, error) {
    if (error.name === 'SequelizeValidationError') {
        const errors = error.errors.map(item => item.message)
        return res.json({
            code: 400,
            message: '请求参数错误',
            error: errors
        })
    }
    
    if (error.name === 'BadRequestError') {
        return res.json({
            code: 400,
            message: '请求参数错误',
            error: [error.message]
        })
    }
    if (error.name === 'UnauthorizedError') {
        return res.json({
            code: 401,
            message: '认证失败',
            error: [error.message]
        })
    }

    if (error.name == 'JsonWebTokenError') { 
        return res.json({
            code: 401,
            message: '认证失败',
            error: ['你提交的 token 错误']
        })
    }
    // console.log('error.name->',error.name)
    if (error.name == 'TokenExpiredError') {
        return res.json({
            code: 401,
            message: '认证失败',
            error: ['token 已过期']
        })
    }
    

    if (error.name === 'NotFoundError') {
        return res.json({
            code: 404,
            message: '资源不存在',
            error: [error.message]
        })
    }

    res.json({
        code: 500,
        message: '服务器错误',
        error: [error.message]
    })
}

module.exports = {
    success,
    failure
}

